+2(0, y) -> y
+2(s1(x), y) -> s1(+2(x, y))
++2(nil, ys) -> ys
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
sum1(:2(x, nil)) -> :2(x, nil)
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(++2(xs, :2(x, :2(y, ys)))) -> sum1(++2(xs, sum1(:2(x, :2(y, ys)))))
-2(x, 0) -> x
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
quot2(0, s1(y)) -> 0
quot2(s1(x), s1(y)) -> s1(quot2(-2(x, y), s1(y)))
length1(nil) -> 0
length1(:2(x, xs)) -> s1(length1(xs))
hd1(:2(x, xs)) -> x
avg1(xs) -> quot2(hd1(sum1(xs)), length1(xs))
↳ QTRS
↳ DependencyPairsProof
+2(0, y) -> y
+2(s1(x), y) -> s1(+2(x, y))
++2(nil, ys) -> ys
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
sum1(:2(x, nil)) -> :2(x, nil)
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(++2(xs, :2(x, :2(y, ys)))) -> sum1(++2(xs, sum1(:2(x, :2(y, ys)))))
-2(x, 0) -> x
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
quot2(0, s1(y)) -> 0
quot2(s1(x), s1(y)) -> s1(quot2(-2(x, y), s1(y)))
length1(nil) -> 0
length1(:2(x, xs)) -> s1(length1(xs))
hd1(:2(x, xs)) -> x
avg1(xs) -> quot2(hd1(sum1(xs)), length1(xs))
SUM1(++2(xs, :2(x, :2(y, ys)))) -> ++12(xs, sum1(:2(x, :2(y, ys))))
AVG1(xs) -> HD1(sum1(xs))
QUOT2(s1(x), s1(y)) -> -12(x, y)
LENGTH1(:2(x, xs)) -> LENGTH1(xs)
-12(s1(x), s1(y)) -> -12(x, y)
+12(s1(x), y) -> +12(x, y)
AVG1(xs) -> QUOT2(hd1(sum1(xs)), length1(xs))
AVG1(xs) -> SUM1(xs)
++12(:2(x, xs), ys) -> ++12(xs, ys)
AVG1(xs) -> LENGTH1(xs)
SUM1(:2(x, :2(y, xs))) -> +12(x, y)
SUM1(:2(x, :2(y, xs))) -> SUM1(:2(+2(x, y), xs))
QUOT2(s1(x), s1(y)) -> QUOT2(-2(x, y), s1(y))
SUM1(++2(xs, :2(x, :2(y, ys)))) -> SUM1(:2(x, :2(y, ys)))
SUM1(++2(xs, :2(x, :2(y, ys)))) -> SUM1(++2(xs, sum1(:2(x, :2(y, ys)))))
+2(0, y) -> y
+2(s1(x), y) -> s1(+2(x, y))
++2(nil, ys) -> ys
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
sum1(:2(x, nil)) -> :2(x, nil)
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(++2(xs, :2(x, :2(y, ys)))) -> sum1(++2(xs, sum1(:2(x, :2(y, ys)))))
-2(x, 0) -> x
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
quot2(0, s1(y)) -> 0
quot2(s1(x), s1(y)) -> s1(quot2(-2(x, y), s1(y)))
length1(nil) -> 0
length1(:2(x, xs)) -> s1(length1(xs))
hd1(:2(x, xs)) -> x
avg1(xs) -> quot2(hd1(sum1(xs)), length1(xs))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
SUM1(++2(xs, :2(x, :2(y, ys)))) -> ++12(xs, sum1(:2(x, :2(y, ys))))
AVG1(xs) -> HD1(sum1(xs))
QUOT2(s1(x), s1(y)) -> -12(x, y)
LENGTH1(:2(x, xs)) -> LENGTH1(xs)
-12(s1(x), s1(y)) -> -12(x, y)
+12(s1(x), y) -> +12(x, y)
AVG1(xs) -> QUOT2(hd1(sum1(xs)), length1(xs))
AVG1(xs) -> SUM1(xs)
++12(:2(x, xs), ys) -> ++12(xs, ys)
AVG1(xs) -> LENGTH1(xs)
SUM1(:2(x, :2(y, xs))) -> +12(x, y)
SUM1(:2(x, :2(y, xs))) -> SUM1(:2(+2(x, y), xs))
QUOT2(s1(x), s1(y)) -> QUOT2(-2(x, y), s1(y))
SUM1(++2(xs, :2(x, :2(y, ys)))) -> SUM1(:2(x, :2(y, ys)))
SUM1(++2(xs, :2(x, :2(y, ys)))) -> SUM1(++2(xs, sum1(:2(x, :2(y, ys)))))
+2(0, y) -> y
+2(s1(x), y) -> s1(+2(x, y))
++2(nil, ys) -> ys
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
sum1(:2(x, nil)) -> :2(x, nil)
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(++2(xs, :2(x, :2(y, ys)))) -> sum1(++2(xs, sum1(:2(x, :2(y, ys)))))
-2(x, 0) -> x
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
quot2(0, s1(y)) -> 0
quot2(s1(x), s1(y)) -> s1(quot2(-2(x, y), s1(y)))
length1(nil) -> 0
length1(:2(x, xs)) -> s1(length1(xs))
hd1(:2(x, xs)) -> x
avg1(xs) -> quot2(hd1(sum1(xs)), length1(xs))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
LENGTH1(:2(x, xs)) -> LENGTH1(xs)
+2(0, y) -> y
+2(s1(x), y) -> s1(+2(x, y))
++2(nil, ys) -> ys
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
sum1(:2(x, nil)) -> :2(x, nil)
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(++2(xs, :2(x, :2(y, ys)))) -> sum1(++2(xs, sum1(:2(x, :2(y, ys)))))
-2(x, 0) -> x
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
quot2(0, s1(y)) -> 0
quot2(s1(x), s1(y)) -> s1(quot2(-2(x, y), s1(y)))
length1(nil) -> 0
length1(:2(x, xs)) -> s1(length1(xs))
hd1(:2(x, xs)) -> x
avg1(xs) -> quot2(hd1(sum1(xs)), length1(xs))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
LENGTH1(:2(x, xs)) -> LENGTH1(xs)
POL( :2(x1, x2) ) = 3x1 + x2 + 1
POL( LENGTH1(x1) ) = 2x1 + 2
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
+2(0, y) -> y
+2(s1(x), y) -> s1(+2(x, y))
++2(nil, ys) -> ys
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
sum1(:2(x, nil)) -> :2(x, nil)
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(++2(xs, :2(x, :2(y, ys)))) -> sum1(++2(xs, sum1(:2(x, :2(y, ys)))))
-2(x, 0) -> x
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
quot2(0, s1(y)) -> 0
quot2(s1(x), s1(y)) -> s1(quot2(-2(x, y), s1(y)))
length1(nil) -> 0
length1(:2(x, xs)) -> s1(length1(xs))
hd1(:2(x, xs)) -> x
avg1(xs) -> quot2(hd1(sum1(xs)), length1(xs))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
-12(s1(x), s1(y)) -> -12(x, y)
+2(0, y) -> y
+2(s1(x), y) -> s1(+2(x, y))
++2(nil, ys) -> ys
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
sum1(:2(x, nil)) -> :2(x, nil)
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(++2(xs, :2(x, :2(y, ys)))) -> sum1(++2(xs, sum1(:2(x, :2(y, ys)))))
-2(x, 0) -> x
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
quot2(0, s1(y)) -> 0
quot2(s1(x), s1(y)) -> s1(quot2(-2(x, y), s1(y)))
length1(nil) -> 0
length1(:2(x, xs)) -> s1(length1(xs))
hd1(:2(x, xs)) -> x
avg1(xs) -> quot2(hd1(sum1(xs)), length1(xs))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
-12(s1(x), s1(y)) -> -12(x, y)
POL( s1(x1) ) = x1 + 3
POL( -12(x1, x2) ) = 3x2 + 3
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
+2(0, y) -> y
+2(s1(x), y) -> s1(+2(x, y))
++2(nil, ys) -> ys
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
sum1(:2(x, nil)) -> :2(x, nil)
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(++2(xs, :2(x, :2(y, ys)))) -> sum1(++2(xs, sum1(:2(x, :2(y, ys)))))
-2(x, 0) -> x
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
quot2(0, s1(y)) -> 0
quot2(s1(x), s1(y)) -> s1(quot2(-2(x, y), s1(y)))
length1(nil) -> 0
length1(:2(x, xs)) -> s1(length1(xs))
hd1(:2(x, xs)) -> x
avg1(xs) -> quot2(hd1(sum1(xs)), length1(xs))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
QUOT2(s1(x), s1(y)) -> QUOT2(-2(x, y), s1(y))
+2(0, y) -> y
+2(s1(x), y) -> s1(+2(x, y))
++2(nil, ys) -> ys
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
sum1(:2(x, nil)) -> :2(x, nil)
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(++2(xs, :2(x, :2(y, ys)))) -> sum1(++2(xs, sum1(:2(x, :2(y, ys)))))
-2(x, 0) -> x
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
quot2(0, s1(y)) -> 0
quot2(s1(x), s1(y)) -> s1(quot2(-2(x, y), s1(y)))
length1(nil) -> 0
length1(:2(x, xs)) -> s1(length1(xs))
hd1(:2(x, xs)) -> x
avg1(xs) -> quot2(hd1(sum1(xs)), length1(xs))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
QUOT2(s1(x), s1(y)) -> QUOT2(-2(x, y), s1(y))
POL( -2(x1, x2) ) = x1
POL( s1(x1) ) = 3x1 + 2
POL( 0 ) = max{0, -1}
POL( QUOT2(x1, x2) ) = 2x1 + 1
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
-2(x, 0) -> x
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
+2(0, y) -> y
+2(s1(x), y) -> s1(+2(x, y))
++2(nil, ys) -> ys
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
sum1(:2(x, nil)) -> :2(x, nil)
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(++2(xs, :2(x, :2(y, ys)))) -> sum1(++2(xs, sum1(:2(x, :2(y, ys)))))
-2(x, 0) -> x
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
quot2(0, s1(y)) -> 0
quot2(s1(x), s1(y)) -> s1(quot2(-2(x, y), s1(y)))
length1(nil) -> 0
length1(:2(x, xs)) -> s1(length1(xs))
hd1(:2(x, xs)) -> x
avg1(xs) -> quot2(hd1(sum1(xs)), length1(xs))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
↳ QDP
++12(:2(x, xs), ys) -> ++12(xs, ys)
+2(0, y) -> y
+2(s1(x), y) -> s1(+2(x, y))
++2(nil, ys) -> ys
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
sum1(:2(x, nil)) -> :2(x, nil)
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(++2(xs, :2(x, :2(y, ys)))) -> sum1(++2(xs, sum1(:2(x, :2(y, ys)))))
-2(x, 0) -> x
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
quot2(0, s1(y)) -> 0
quot2(s1(x), s1(y)) -> s1(quot2(-2(x, y), s1(y)))
length1(nil) -> 0
length1(:2(x, xs)) -> s1(length1(xs))
hd1(:2(x, xs)) -> x
avg1(xs) -> quot2(hd1(sum1(xs)), length1(xs))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
++12(:2(x, xs), ys) -> ++12(xs, ys)
POL( :2(x1, x2) ) = 2x2 + 1
POL( ++12(x1, x2) ) = x1 + 3
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
↳ QDP
+2(0, y) -> y
+2(s1(x), y) -> s1(+2(x, y))
++2(nil, ys) -> ys
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
sum1(:2(x, nil)) -> :2(x, nil)
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(++2(xs, :2(x, :2(y, ys)))) -> sum1(++2(xs, sum1(:2(x, :2(y, ys)))))
-2(x, 0) -> x
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
quot2(0, s1(y)) -> 0
quot2(s1(x), s1(y)) -> s1(quot2(-2(x, y), s1(y)))
length1(nil) -> 0
length1(:2(x, xs)) -> s1(length1(xs))
hd1(:2(x, xs)) -> x
avg1(xs) -> quot2(hd1(sum1(xs)), length1(xs))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
+12(s1(x), y) -> +12(x, y)
+2(0, y) -> y
+2(s1(x), y) -> s1(+2(x, y))
++2(nil, ys) -> ys
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
sum1(:2(x, nil)) -> :2(x, nil)
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(++2(xs, :2(x, :2(y, ys)))) -> sum1(++2(xs, sum1(:2(x, :2(y, ys)))))
-2(x, 0) -> x
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
quot2(0, s1(y)) -> 0
quot2(s1(x), s1(y)) -> s1(quot2(-2(x, y), s1(y)))
length1(nil) -> 0
length1(:2(x, xs)) -> s1(length1(xs))
hd1(:2(x, xs)) -> x
avg1(xs) -> quot2(hd1(sum1(xs)), length1(xs))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
+12(s1(x), y) -> +12(x, y)
POL( +12(x1, x2) ) = 2x1 + 3x2 + 2
POL( s1(x1) ) = x1 + 1
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
+2(0, y) -> y
+2(s1(x), y) -> s1(+2(x, y))
++2(nil, ys) -> ys
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
sum1(:2(x, nil)) -> :2(x, nil)
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(++2(xs, :2(x, :2(y, ys)))) -> sum1(++2(xs, sum1(:2(x, :2(y, ys)))))
-2(x, 0) -> x
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
quot2(0, s1(y)) -> 0
quot2(s1(x), s1(y)) -> s1(quot2(-2(x, y), s1(y)))
length1(nil) -> 0
length1(:2(x, xs)) -> s1(length1(xs))
hd1(:2(x, xs)) -> x
avg1(xs) -> quot2(hd1(sum1(xs)), length1(xs))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
SUM1(:2(x, :2(y, xs))) -> SUM1(:2(+2(x, y), xs))
+2(0, y) -> y
+2(s1(x), y) -> s1(+2(x, y))
++2(nil, ys) -> ys
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
sum1(:2(x, nil)) -> :2(x, nil)
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(++2(xs, :2(x, :2(y, ys)))) -> sum1(++2(xs, sum1(:2(x, :2(y, ys)))))
-2(x, 0) -> x
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
quot2(0, s1(y)) -> 0
quot2(s1(x), s1(y)) -> s1(quot2(-2(x, y), s1(y)))
length1(nil) -> 0
length1(:2(x, xs)) -> s1(length1(xs))
hd1(:2(x, xs)) -> x
avg1(xs) -> quot2(hd1(sum1(xs)), length1(xs))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
SUM1(:2(x, :2(y, xs))) -> SUM1(:2(+2(x, y), xs))
POL( s1(x1) ) = max{0, -3}
POL( 0 ) = 1
POL( SUM1(x1) ) = max{0, x1 - 3}
POL( :2(x1, x2) ) = 3x2 + 3
POL( +2(x1, x2) ) = max{0, -3}
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
+2(0, y) -> y
+2(s1(x), y) -> s1(+2(x, y))
++2(nil, ys) -> ys
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
sum1(:2(x, nil)) -> :2(x, nil)
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(++2(xs, :2(x, :2(y, ys)))) -> sum1(++2(xs, sum1(:2(x, :2(y, ys)))))
-2(x, 0) -> x
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
quot2(0, s1(y)) -> 0
quot2(s1(x), s1(y)) -> s1(quot2(-2(x, y), s1(y)))
length1(nil) -> 0
length1(:2(x, xs)) -> s1(length1(xs))
hd1(:2(x, xs)) -> x
avg1(xs) -> quot2(hd1(sum1(xs)), length1(xs))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
SUM1(++2(xs, :2(x, :2(y, ys)))) -> SUM1(++2(xs, sum1(:2(x, :2(y, ys)))))
+2(0, y) -> y
+2(s1(x), y) -> s1(+2(x, y))
++2(nil, ys) -> ys
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
sum1(:2(x, nil)) -> :2(x, nil)
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(++2(xs, :2(x, :2(y, ys)))) -> sum1(++2(xs, sum1(:2(x, :2(y, ys)))))
-2(x, 0) -> x
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
quot2(0, s1(y)) -> 0
quot2(s1(x), s1(y)) -> s1(quot2(-2(x, y), s1(y)))
length1(nil) -> 0
length1(:2(x, xs)) -> s1(length1(xs))
hd1(:2(x, xs)) -> x
avg1(xs) -> quot2(hd1(sum1(xs)), length1(xs))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
SUM1(++2(xs, :2(x, :2(y, ys)))) -> SUM1(++2(xs, sum1(:2(x, :2(y, ys)))))
POL( ++2(x1, x2) ) = 2x1 + 2x2 + 1
POL( SUM1(x1) ) = max{0, 2x1 - 3}
POL( +2(x1, x2) ) = 0
POL( sum1(x1) ) = 2
POL( 0 ) = max{0, -2}
POL( s1(x1) ) = 2
POL( nil ) = max{0, -3}
POL( :2(x1, x2) ) = x2 + 2
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
++2(nil, ys) -> ys
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(:2(x, nil)) -> :2(x, nil)
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
+2(0, y) -> y
+2(s1(x), y) -> s1(+2(x, y))
++2(nil, ys) -> ys
++2(:2(x, xs), ys) -> :2(x, ++2(xs, ys))
sum1(:2(x, nil)) -> :2(x, nil)
sum1(:2(x, :2(y, xs))) -> sum1(:2(+2(x, y), xs))
sum1(++2(xs, :2(x, :2(y, ys)))) -> sum1(++2(xs, sum1(:2(x, :2(y, ys)))))
-2(x, 0) -> x
-2(0, s1(y)) -> 0
-2(s1(x), s1(y)) -> -2(x, y)
quot2(0, s1(y)) -> 0
quot2(s1(x), s1(y)) -> s1(quot2(-2(x, y), s1(y)))
length1(nil) -> 0
length1(:2(x, xs)) -> s1(length1(xs))
hd1(:2(x, xs)) -> x
avg1(xs) -> quot2(hd1(sum1(xs)), length1(xs))